package com.durian.domain.VO;

import com.durian.enums.OrderStatus;
import lombok.*;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 订单列表 VO
 *
 * @author Durian
 * @since 2023-12-10
 */
@Data
@Builder
@ToString
@AllArgsConstructor
@NoArgsConstructor
public class ObsOrderVO implements Serializable {

    /**
     * 订单id
     */
    private Long orderId;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 订单号
     */
    private String orderNumber;

    /**
     * 订单生成日期
     */
    private LocalDateTime orderCreateTime;

    /**
     * 订单的总价
     */
    private Double orderPrice;

    /**
     * 订单状态(已完成：1，未完成：0，已支付：2，待支付：3)
     */
    private OrderStatus orderStatus;

    /**
     * 地址
     */
    private String address;

    /**
     * 详细地址
     */
    private String addressDetail;

    /**
     * 联系人
     */
    private String addressContact;

    /**
     * 手机号
     */
    private String addressPhone;

    /**
     * 订单的书籍
     */
    private List<ObsOrderBookVO> bookList;
}
